#ifndef GAME_ENGINE__COLOR_H
#define GAME_ENGINE__COLOR_H

/* *
 * 
 * @author tfischer
 * Format independent color description 
 * 
 * */

#include <SDL/SDL.h>

#include "Graphics.h"
#include "../utils/data_types.h"

class Color
{
    public:
        
        Color(uint8 red, uint8 green, uint8 blue, uint8 alpha = 1.0);
        
        uint32 GetColor() const;
        
        const SDL_Color& GetSDLColor() const;
        
        static const Color BLACK;
        static const Color WHITE;
        static const Color RED;
        static const Color GREEN;
        static const Color BLUE;
        static const Color YELLOW;
        static const Color CYAN;
        static const Color MAGENTA;
        
    private:
        
        uint8 _red;
        uint8 _green;
        uint8 _blue;
        uint8 _alpha;
};

#endif
